Display of items from search

ABSTRACT

Disclosed are various embodiments for determining categories of items to include in a search results page. Representative is a system comprising at least one computing device with a search engine and a network page build process that are executable therein. The search engine identifies a plurality of items to display in a network page in response to a request for search, wherein the items are classified in a plurality of categories. The network page build process applies one or more rules to determine one or more of the categories for which corresponding ones of the items are to be displayed in a network page.

BACKGROUND

Merchants who conduct electronic commerce by selling their goods overthe Internet can provide various network pages that allow users to entera search string from which a search may be performed in order to findone or more items desired by such users. It can be the case that usersmay enter very broad search strings that are difficult to narrow down toa particular genre of items desired by the users. As a consequence, theitems displayed in a search result network page may vary widely,resulting in an unsatisfying user experience that may result in a lossof sales.

BRIEF DESCRIPTION OF THE DRAWINGS

Many aspects of the present disclosure can be better understood withreference to the following drawings. The components in the drawings arenot necessarily to scale, emphasis instead being placed upon clearlyillustrating the principles of the disclosure. Moreover, in thedrawings, like reference numerals designate corresponding partsthroughout the several views.

FIG. 1 is a drawing of a networked environment according to variousembodiments of the present disclosure.

FIG. 2 is a drawing of an example of a portion of a taxonomy employed ina computing device in the networked environment of FIG. 1 according tovarious embodiments of the present disclosure.

FIG. 3 is a drawing of one example of a network page generated by acomputing device.

FIG. 4 is a drawing of one example of a network page generated by acomputing device in the networked environment of FIG. 1 according tovarious embodiments of the present disclosure.

FIG. 5 is a drawing of an example of a network page generated by acomputing device that provides for a portion of a seller portal in thenetworked environment of FIG. 1 according to various embodiments of thepresent disclosure.

FIG. 6 is a drawing of another example of a network page generated by acomputing device that provides for a further portion of the sellerportal in the networked environment of FIG. 1 according to variousembodiments of the present disclosure.

FIG. 7 is a flowchart illustrating one example of functionalityimplemented as a portion of a network page build process executed in acomputing device in the networked environment of FIG. 1 according tovarious embodiments of the present disclosure.

FIG. 8 is a schematic block diagram that provides one exampleillustration of a computing device employed in the networked environmentof FIG. 1 according to various embodiments of the present disclosure.

DETAILED DESCRIPTION

The present disclosure relates to determining the types of items anditem classifications that are to be displayed to a user in response to asearch request. In some cases, users may enter search terms during asearch for items such as products, for example, that may be offered forsale through the online presence of a merchant. If the search terms arevery broad, it may be the case that products from multiple unrelatedcategories are identified as responsive to the search terms entered. Asa consequence, the user may be presented with many different products inthe search results, where many of the products presented may beirrelevant to those desired by the user. In one embodiment, variouscategories or classifications of items are selectively presented to theuser based on various factors as will be described. In the followingdiscussion, a general description of the system and its components isprovided, followed by a discussion of the operation of the same.

FIG. 1 shows a networked environment 100 according to variousembodiments. The networked environment 100 includes a computing device103 and a client 106, both of which are coupled to a network 109. Thenetwork 109 includes, for example, the Internet, intranets, extranets,wide area networks (WANs), local area networks (LANs), wired networks,wireless networks, or other suitable networks, etc., or any combinationof two or more such networks.

The computing device 103 may comprise, for example, a server computer orany other system providing computing capability. Alternatively, aplurality of computing devices 103 may be employed that are arranged,for example, in one or more server banks or computer banks or otherarrangements. For example, a plurality of computing devices 103 togethermay comprise, for example, a cloud computing resource, a grid computingresource, and/or any other distributed computing arrangement. Suchcomputing devices 103 may be located in a single installation or may bedispersed among many different geographical locations. In oneembodiment, the computing device 103 represents a virtualized computersystem executing on one or more physical computing systems. For purposesof convenience, the computing device 103 is referred to herein in thesingular. Even though the computing device 103 is referred to in thesingular, it is understood that a plurality of computing devices 103 maybe employed in the various arrangements as described above.

Various applications and/or other functionality may be executed in thecomputing device 103 according to various embodiments. Also, variousdata is stored in a data store 113 that is accessible to the computingdevice 103. The data store 113 may be representative of a plurality ofdata stores as can be appreciated. The data stored in the data store113, for example, is associated with the operation of the variousapplications and/or functional entities described below.

The components executed on the computing device 103 include, forexample, an electronic commerce application 116, network serverapplications 119, and other applications, services, processes, systems,engines, or functionality not discussed in detail herein. Although theelectronic commerce application 116 is referred to herein in thesingular, it is understood that it may comprise a plurality ofapplications as can be appreciated. The electronic commerce application116 is executed to provide for the online presence of one or moremerchants to conduct electronic commerce over the network 109 which maycomprise, for example, the Internet or other network as can beappreciated. The electronic commerce application 116 may be configuredto facilitate the online presence of a single merchant, or it mayfacilitate a virtual marketplace that presents the online presence ofmany different merchants. In doing so, the electronic commerceapplication 116 provides for one or more network sites such as web sitesand the like. The network server applications 119 are executed toprovide network access to the electronic commerce application 116 andpotentially other applications. In one embodiment, the network serverapplications 119 may comprise web servers or other types of networkserver applications 119 as can be appreciated.

The electronic commerce application 116 includes many differentcomponents such as, for example, a catalog search engine 123, networkpage build processes 126, and other applications or components. Thecatalog search engine 123 is implemented to search an item catalog 139based on a search string 127 received from a client 106 as will bedescribed. The network page build processes 126 are employed to generatevarious network pages 186 as will be described.

The data stored in the data store 113 includes, for example, displayrules 133, arbitration rules 136, an item catalog 139, and potentiallyother data. The display rules 133 are employed to determine one or morecategories 156 of items 143 that are to be displayed in a given networkpage 186 as will be described. The arbitration rules 136 are employed todetermine an active set of display rules 133 to employ for this purpose.The item catalog 139 includes a plurality of items 143 that are soldthrough the network presence of the merchant. In one embodiment, theitems 143 may comprise products such as goods and/or services.

In addition, stored in the data store 113 is a taxonomy 153 thatincludes a plurality of categories 156. Classified under each of thecategories 156 are a number of concepts 159. The concepts 159 may bearranged in a tree extending under the categories 156 as will bedescribed. In one embodiment, the taxonomy 153 serves to facilitate theuser identification of products that they wish to purchase through theelectronic commerce application 116 as will be described. In addition,other items 143 stored in the data store 113 include customer accounts163, promotions 166, purchase history data 169, browse history data 173,sales data 176, inventory data 179, seller profiles 181, and otherinformation.

The customer accounts 163 include information about customers such as,for example, their name, shipping addresses, billing addresses, paymentinstrument information, and other information about users typically heldby online merchants to conduct electronic commerce with such customers.The promotions 166 may indicate special deals for items 143 sold throughthe electronic commerce application 116 and other data related tospecial offers for such items 143 as can be appreciated. The purchasehistory data 169 includes information about items 143 purchased byrespective users. To this end, the purchase history data 169 may bestored in association with the customer accounts 163. Alternatively, thepurchase history data 169 may be accessed for all users on an aggregatebasis for various purposes as will be described. Similarly, the browsehistory data 173 includes information relating to the browse history foreach customer that navigates through various network pages 186 of one ormore network sites generated by the electronic commerce application 116that provide for the online presence of one or more merchants. Thebrowse history data 173 may be associated with each of the respectivecustomer accounts 163, or may be stored in the aggregate to provide datafor various purposes as will be described. The sales data 176 includesinformation about all of the past sales of items 143 through the networkpresence of one or more merchants as facilitated by the electroniccommerce application 116.

The inventory data 179 includes information indicating the amounts ofeach of the items 143 that are currently stored in inventory and otherinformation relating to inventory. Each of the seller profiles 181includes information needed to facilitate the online presence of acorresponding one of a plurality of merchants. Such information mayinclude seller name, address, financial information, and otherinformation. Also, the display rules 133, arbitration rules 136, itemcatalog 139, and other components may include data that is associatedwith respective seller profiles 181. For example, a given merchant mayprovide their own catalog of items 143 that is included as a portion ofthe item catalog 139 along with items 143 from other merchants, etc.

The client 106 is representative of a plurality of client devices thatmay be coupled to the network 109. The client 106 may comprise, forexample, a processor-based system such as a computer system. Such acomputer system may be embodied, for example, in the form of a desktopcomputer, a laptop computer, a personal digital assistant, a cellulartelephone, set-top box, music players, web pads, tablet computersystems, or other devices with like capability. The client 106 includesa display device 183 that may be employed to display network pages 186and other content. The display device 183 may comprise, for example, acathode ray tube (CRT), a liquid crystal display (LCD), or other type ofdisplay device 183 as can be appreciated.

The client 106 may be configured to execute various applications such asa browser 189 and/or other applications. The browser 189 may be executedin a client 106, for example, to access and render network pages 186,such as web pages, or other network content served up by the computingdevice 103 and/or other servers. The client 106 may be configured toexecute applications beyond browser 189 such as, for example, emailapplications, instant message applications, and/or other applications.

Next, a general description of the operation of the various componentsof the networked environment 100 is provided. To begin, assume that auser may wish to purchase a desired product online through theelectronic commerce application 116. The user enters the search string127 into an appropriate text box in a respective network page 186 thatis then transmitted to the computing device 103 from the client 106. Thenetwork server application 119 receives the search string 127 andinitiates an instance of the network page build process 126 to generatea network page 186 that is responsive to the search request.

In generating a network page 186 that presents search results, thenetwork page build process 126 provides the search string 127 to thecatalog search engine 123 with a request to identify the plurality ofthe items 143 responsive to the search string 127. The catalog searchengine 123 performs a search of the item catalog 139 based on the searchstring 127 to generate a list of items 143 responsive to the searchstring 127. According to one embodiment, the items 143 are classified invarious categories 156 associated with the taxonomy 153. Alternatively,the categories 156 may be maintained in some other manner as can beappreciated.

Once the catalog search engine 123 obtains a listing of the variousitems 143 that are responsive to the search request, then the networkpage build process 126 proceeds to apply one or more display rules 133to determine one or more of the categories 156 for which correspondingones of the items 143 are to be displayed in a network page 186responsive to the original request from the client 106.

In generating the respective network page 186, the network page buildprocess 126 may be configured to identify a portion of the taxonomy 153that is to be displayed in association with the items 143 from one ormore respective categories 156. To this end, the portion of the taxonomy153 may display one or more branches of a tree 203 of concepts 159associated with one or more categories 156 as will be described. Thedisplay rules 133 may determine one or more of the categories 156 forwhich items 143 are to be displayed based at least in part upon variousdata stored in the data store 113 such as the customer account data 163,promotions 166, purchase history data 169, browse history data 173,sales data 176, inventory data 179, or other information as can beappreciated. Once the network page build process 126 identifies arespective category 156 for which items 143 are to be displayed in agiven network page 186, then the network page build process 126generates a network page 186 that includes a display of the respectiveitems 143 for the corresponding one or more categories 156 that havebeen identified. Also, a portion of the taxonomy 153 is displayed withbranches of concepts 159 of the identified categories 156 expanded aswill be described. Thereafter, the network page 186 is transmitted tothe client 106.

Referring next to FIG. 2, shown is one example of a tree 203 that makesup a portion of the taxonomy 153 (FIG. 1) according to variousembodiments. The tree 203 includes a category 156 and a plurality ofconcepts 159 that fall under such category 156. The concepts 159 may beinformation that can be used to narrow down a number of items 143 to beviewed in a network page 186. In one embodiment, each of the categories156 exists at the top level of the taxonomy 153. Alternatively, any oneof the concepts 159 at any level of the taxonomy 153 may be considered acategory 156 and the concepts 159 that are subordinate to such category156 may be considered branches of a tree 203 associated with suchcategory 156 as can be appreciated. Thus, categories 156 may be definedat any level within a given tree 203 that makes up a portion of thetaxonomy 153. As contemplated herein, the concept of expanding a tree203 under a category 156 means that at least some concepts 159classified under a category 156 are displayed relative to the category156.

To give a concrete example, in the category 156 of electronics,subordinate concepts 159 may comprise TVs, radios, cameras, or otherdifferent types of electronics. There may be concepts 159 that aresubordinate to concepts 159. For example, for a given concept of “TV”under a category of electronics, further subordinate concepts 159 maycomprise the different screen sizes, different brands, or other concepts159 as can be appreciated. Ultimately, each of the concepts 159 that aresubordinate to a category 156 facilitate a further narrowing of a givensearch to hone in on desired products as can be appreciated.

With reference next to FIG. 3, shown is one example of a network page186 denoted herein as network page 186 a. The network page 186 a depictsthe search results for a search performed based upon a search string 127entered by a user through the client 106. The network page 186 aincludes a listing of items 143 that were obtained from a searchperformed based upon a search string 127 of “HD.” To this end, thecatalog search engine 123 (FIG. 1) will have performed a search throughthe item catalog 139 to identify those items 143 responsive to thesearch string 127.

In addition, the network page 186 a includes a listing of a portion ofthe taxonomy 153 that comprises a listing of categories 156. Associatedwith each of the categories 156 is a number that indicates the number ofitems 143 responsive to the search string 127 that fall within suchcategories 156.

As can be seen, the items 143 responsive to the search string 127 arevery diverse and stretch across multiple different categories 156. Thisis because the search string 127 of “HD” is rather broad and does notrelate to a specific category 156 or a relatively small group ofcategories 156. This presents a problem in that the search results aremuch less likely to be relevant to the specific products sought by auser who entered the search string 127.

Referring next to FIG. 4, shown is another example of a network page 186denoted herein as network page 186 b according to various embodiments.As shown, the search string 127 (FIG. 1) has been entered by a user andthe network page 186 b shows the results of a search performed basedupon the term “HD” as the search string 127. As shown, all of the items143 listed in the network page 186 b belong to a single category 156 of“TV and Video.” In this situation, the network page build process 126applied various display rules 133 in order to identify one or morecategories 156 of items 143 that are to be displayed in situations wherethe search string 127 invoked items 143 from many different categories156.

In addition, the portion of the taxonomy 153 depicted in the networkpage 186 b includes concepts 159 that fall under the category 156 of “TVand Video.” Each of the concepts 159 thus presents a branch on a tree203 with the category 156 of “TV and Video” at the top of the tree 203.Stated another way, the category 156 of “TV and Video” is expanded toreveal a first level of a tree 203 of concepts 159 under the category156. The network page 186 b provides a user with a display of therespective branches under the category 156 of items 143 depicted as aresult of the search performed. Thus, according to various embodiments,the items 143 displayed are narrowed to the single category 156 or anappropriate group of categories 156. In addition, a portion of thetaxonomy 153 is displayed in association with the one or more categories156 for which items 143 are displayed in the network page 186 b. Suchportion of the taxonomy 153 displays at least one or more branches of atree 203 of concepts 159 associated with the respective category 156.The display of the tree 203 may show multiple levels as specified by amerchant as will be described.

With reference to FIG. 5, shown is one example of a network page 186denoted herein as network page 186 c according to various embodiments.The network page 186 c comprises a portion of a seller portal thatfacilitates a seller specification of the display rules 133 (FIG. 1) andpotentially the arbitration rules 136 (FIG. 1). In this respect, aseller can control how the network page build process 126 (FIG. 1)decides which category 156 (FIG. 1) or group of categories 156 for whichitems 143 (FIG. 1) are to be displayed in a given network page 186 b(FIG. 4) in situations where the search string 127 (FIG. 4) is so broadas to include items 143 from many different categories 156. The sellerspecifies the display rules 133 that are applicable to the specificonline presence of the seller.

The network page 186 c includes display guidelines 303 that specify howa portion of the taxonomy 153 (FIG. 1) is to be depicted in the networkpage 186 b according to various embodiments. For example, a seller mayspecify that the taxonomy 153 be expanded for one or more categories 156for which items 143 are presented in the network page 186 b as describedabove. Also, the seller may specify that branches of the taxonomy 153can be expanded to a predefined number of levels as shown. Further, theseller may specify that one or more categories 156 that have beenselected for presentation or display in the network page 186 b behighlighted or otherwise changed in some manner to draw attention to thefact that the items 143 of such categories 156 are depicted. Forexample, the one or more categories 156 and associated concepts 159 maybe featured using borders around such items 143, flashing such items143, using a highlighted text, using text of a different font, usingboldface text, or other means to highlight such elements.

In addition, the network page 186 c includes a plurality of rule sets306. Each rule set 306 may include one or more display rules 133 (FIG.1). Associated with each of the rule sets 306 are arbitration rules 136that indicate when such rule sets 306 are to be employed by the networkpage build process 126. For example, the arbitration rules 136 mayspecify time periods within which each one of the rule sets 306 isactive to be employed by the network page build processes 126.Alternatively, the arbitration rules 136 may specify various conditionsthat dictate when a given rule set 306 or display rule 133 is to beapplied to identify one or more of the categories 156 as mentionedabove. The various conditions that may be specified may depend on manydifferent events as can be appreciated.

The network page 186 c also includes an “Add/Edit/Delete Rules” button309 and a “Configure Arbitration Rules” button 313. The Add/Edit/DeleteRules button 309 may be manipulated in order to generate subsequentnetwork pages 186 that facilitate adding, editing or deleting rules to ahighlighted one of the rule sets 306. A seller may select any one of therule sets 306 by clicking on the rule sets 306 with a cursor or by someother action. In addition, the Configure Arbitration Rules button 313facilitates the generation of subsequent network pages 186 c to allowsellers to specify the arbitration rules 136 that dictate whenrespective ones of the rule sets 306 can be employed. In one embodiment,the arbitration rules 136 are generated for a given highlighted one ofthe rule sets 306 when the Configure Arbitration Rules button 313 ispressed. Alternatively, at least some arbitration rules 136 may apply toall the rule sets 306. In one embodiment, one arbitration rule 136 thatmay be associated with each respective one of the rule sets 306 is atime period within which respective rule sets 306 are to be activeduring the course of a year, etc.

Referring next to FIG. 6, shown is an example of a network page 186denoted herein as 186 d according to various embodiments. The networkpage 186 d comprises a second one of the network pages 186 that providesfor a seller portal for a seller to specify the display rules 133 andthe arbitration rules 136 (FIG. 1) that are employed to determine whichcategories 156 (FIG. 1) of items 143 (FIG. 1) are to be displayed in anetwork page 186 b (FIG. 4) as described above. Thus, according to oneembodiment, the seller or merchant may configure the display rules 133and the arbitration rules 136 to their purposes in conducting theiraffairs on their network site.

The network page 186 includes a listing of display rules 133. Thedisplay rules 133 may be selected as active for use by the network pagebuild processes 126 by manipulating toggle devices 353. In addition, atleast some of the display rules 133 include a quantity field to enter avalue that specifies a condition relating to the applicability of therespective display rule 133. For example, a given display rule 133 maystate the following:

-   -   If a category has a number of items that is greater than N        percent of all items found in a search, and no other categories        are greater than this percentage, then present only items in        that category.        Thus, the display rules 133 may be configured as desired by the        sellers by selecting display rules 133 to employ, and specifying        appropriate values associated with such display rules 133.

In one embodiment, a priority specification 356 is associated with eachof the display rules 133. Each of the priority specifications 356indicates the order in which the respective display rules 133 are to beconsidered by the network page build process 126. In addition, a defaultdisplay rule 359 is specified in the case that none of the conditionsspecified by the selected display rules 133 specified by a user areapplicable to a given search. According to one embodiment, a user maymanipulate a “Configure Default” button 363 in order to accesssubsequent network pages 186 to specify the default display rule 359.

In one embodiment, the display rules 133 presented are only consideredif the toggle devices 353 are active. Thus, a seller can specify thoseparticular display rules 133 that they wish to employ in any givensituation. In one embodiment, each rule set 306 (FIG. 5) may include thesame set of rules, where different sets include different combinationsof active ones of the display rules 133 and different prioritiesspecified in the priority specification 356 for such display rules 133.In another embodiment, a single display rule 133 may be selected for agiven rule set 306.

In another embodiment, a wizard or other application may be employed togenerate the display rules 133. In such case, only those display rules133 that are configured may be displayed in the network page 186 d afterimplementation of the wizard or other application. In addition, it maybe possible that individual display rules 133 may include their ownarbitration rules 136 such that individual rules may be applied basedupon whether the condition specified in the arbitration rules 136 aremet. To this extent, the display rules 133 may each be assigned apriority based on a priority specification 356 and the actual set ofdisplay rules 133 that is to be considered by the network page buildprocesses 126 in a given instance may be dynamic depending upon whetherspecific conditions specified by the respective arbitration rules 136for each display rule 133 are met. As such, from instance to instance,different sets of display rules 133 may be considered in determiningwhich categories 156 of items 143 to present to a user.

Referring next to FIG. 7, shown is a flowchart that provides one exampleof the operation of a portion of the network page build process 126according to various embodiments. It is understood that the flowchart ofFIG. 7 provides merely an example of the many different types offunctional arrangements that may be employed to implement the operationof the portion of the network page build process 126 as describedherein. As an alternative, the flowchart of FIG. 7 may be viewed asdepicting an example of steps of a method implemented in the computingdevice 103 (FIG. 1) according to one or more embodiments.

The flowchart of the FIG. 7 depicts at least a portion of thefunctionality of the network page build process 126 in generating anetwork page 186 b (FIG. 4) that shows the results of a catalog search,where the items 143 (FIG. 1) listed belong to one or more categories 156(FIG. 1) identified through an application of the display rules 133(FIG. 1) as described above.

To begin, in box 403, the network page build process 126 requests thecatalog search engine 123 (FIG. 1) to perform a search for items 143 inthe item catalog 139 (FIG. 1) based upon a search string 127 (FIG. 1)received from a client 106 (FIG. 1). Thereafter, in box 406, it isdetermined once results are received from the catalog search engine 123whether items 143 identified in the search are associated with multipledifferent categories 156 of the taxonomy 153. If not, then the networkpage build process 126 proceeds to box 409. On the other hand, if thereare multiple different categories 156 represented, then the network pagebuild process 126 proceeds to box 413.

In box 413, the network page build process 126 determines the currentactive display rules 133 to apply in determining one or more of thecategories 156 for which respective items 143 are to be displayed in thenetwork page 186 b currently being constructed. This may be done, forexample, by consulting the arbitration rules 136 to determine which ofthe display rules 133 are applicable in a given situation. The specificconditions surrounding the respective search, the time of the search,and other information may be relevant to the application of thearbitration rules 136 in a given situation that ultimately determineswhich display rules 133 are to be considered.

Next, in box 416, the network page build process 126 applies the currentactive display rules 133 to the results of the search to determine theone or more categories 156 of items 143 that are to be displayed. Itshould be noted that a category 156 may exist at any level within thetaxonomy 153 (FIG. 1) and that categories 156 at all levels may bespecified based on an application of the display rules 133 to bedisplayed.

The display rules 133 may relate to conditions associated with manydifferent kinds of data stored in the data store 113. For example, thedisplay rules 133 may determine a respective one or more of thecategories 156 for which items 143 are to be displayed based at least inpart upon a state of an inventory of one or more of the items 143associated with such categories 156. For example, categories 156 havingitems 143 with higher levels of inventory as determined by predefinedthresholds may be selected over categories 156 having lower levels ofinventory.

Alternatively, the display rules 133 may determine one or morecategories 156 based at least in part upon browse history data 173(FIG. 1) or purchase history data 169 (FIG. 1) associated with a user ora plurality of users. To this end, the browse history data 173 and/orpurchase history data 169 of one or more users may be consulted todetermine preferences of a given user. A display rule 133 may becreated, for example, that facilitates selection of categories 156 withitems 143 that have been more frequently viewed or purchased relative toother categories 156.

Still further, the display rules 133 may determine the one or morecategories 156 based at least in part upon sales data 176 associatedwith respective ones of the items 143 or with all items 143 inrespective categories 156. For example, the sales data 176 may indicatethe most popular items 143, where display rules 133 may selectcategories 156 if items 143 falling under such categories 156 haveachieved sales above predefined thresholds, etc.

The display rules 133 may determine categories 156 based upon promotions166 for items 143 or categories 156, or information about users storedin association with customer accounts 163. In particular, a customeraccount 163 may provide a profile from which a decision may be madebased on appropriate display rules 133 as to which categories 156 ofitems 143 to present to such users. For example, a display rule 133 mayspecify certain categories 156 be selected based upon the gender of theuser, etc.

Next, in box 419, the network page build process 126 encodes a networkpage 186 d that displays the items 143 that are associated with the oneor more identified categories 156 in accordance with the display rules133 configured by the seller. In addition, the network page buildprocess 126 includes the portion of the taxonomy 153 that displays oneor more branches of a tree 203 of concepts 159 that are associated withthe selected categories 156 in accordance with the display guidelines303 (FIG. 5) as described above. Thereafter, in box 423, the networkpage build process 126 sends the respective network page 186 to theclient 106 through the network server application 119 as can beappreciated.

Referring back to box 406, if the items 143 included in the results ofthe search are all associated with one category 156, then the networkpage build process 126 proceeds to box 409 to encode a network page 186that displays such items 143 from the single category 156. In addition,the taxonomy 153 may be displayed with appropriate branches under therespective category 156 exposed as described above. The nature of thedisplay of the taxonomy 153 will comport with a seller configuration asspecified in the display guidelines 303 described above.

With reference to FIG. 8, shown is a schematic block diagram of oneexample of a computing device 103 according to an embodiment of thepresent disclosure. The computing device 103 includes at least oneprocessor circuit, for example, having a processor 503 and a memory 506,both of which are coupled to a local interface 509. To this end, thecomputing device 103 may comprise, for example, at least one servercomputer or like device. The local interface 509 may comprise, forexample, a data bus with an accompanying address/control bus or otherbus structure as can be appreciated.

Stored in the memory 506 are both data and several components that areexecutable by the processor 503. In particular, stored in the memory 506and executable by the processor 503 are the electronic commerceapplication 116 that includes the catalog search engine 123 and thenetwork page build process(es) 126, and potentially other applications.Also the data store 113 may be stored in the memory 506. In addition, anoperating system 513 may be stored in the memory 506 and executable bythe processor 503.

It is understood that there may be other applications that are stored inthe memory 506 and are executable by the processors 503 as can beappreciated. Where any component discussed herein is implemented in theform of software, any one of a number of programming languages may beemployed such as, for example, C, C++, C#, Objective C, Java, JavaScript, Perl, PHP, Visual Basic, Python, Ruby, Delphi, Flash, or otherprogramming languages.

A number of software components are stored in the memory 506 and areexecutable by the processor 503. In this respect, the term “executable”means a program file that is in a form that can ultimately be run by theprocessor 503. Examples of executable programs may be, for example, acompiled program that can be translated into machine code in a formatthat can be loaded into a random access portion of the memory 506 andrun by the processor 503, source code that may be expressed in properformat such as object code that is capable of being loaded into a randomaccess portion of the memory 506 and executed by the processor 503, orsource code that may be interpreted by another executable program togenerate instructions in a random access portion of the memory 506 to beexecuted by the processor 503, etc. An executable program may be storedin any portion or component of the memory 506 including, for example,random access memory (RAM), read-only memory (ROM), hard drive,solid-state drive, USB flash drive, memory card, optical disc such ascompact disc (CD) or digital versatile disc (DVD), floppy disk, magnetictape, or other memory components.

The memory 506 is defined herein as including both volatile andnonvolatile memory and data storage components. Volatile components arethose that do not retain data values upon loss of power. Nonvolatilecomponents are those that retain data upon a loss of power. Thus, thememory 506 may comprise, for example, random access memory (RAM),read-only memory (ROM), hard disk drives, solid-state drives, USB flashdrives, memory cards accessed via a memory card reader, floppy disksaccessed via an associated floppy disk drive, optical discs accessed viaan optical disc drive, magnetic tapes accessed via an appropriate tapedrive, and/or other memory components, or a combination of any two ormore of these memory components. In addition, the RAM may comprise, forexample, static random access memory (SRAM), dynamic random accessmemory (DRAM), or magnetic random access memory (MRAM) and other suchdevices. The ROM may comprise, for example, a programmable read-onlymemory (PROM), an erasable programmable read-only memory (EPROM), anelectrically erasable programmable read-only memory (EEPROM), or otherlike memory device.

Also, the processor 503 may represent multiple processors 503 and thememory 506 may represent multiple memories 506 that operate in parallelprocessing circuits, respectively. In such a case, the local interface509 may be an appropriate network that facilitates communication betweenany two of the multiple processors 503, between any processor 503 andany of the memories 506, or between any two of the memories 506, etc.The local interface 509 may comprise additional systems designed tocoordinate this communication, including, for example, performing loadbalancing. The processor 503 may be of electrical or of some otheravailable construction.

Although the electronic commerce application(s) 116, and other varioussystems described herein may be embodied in software or code executed bygeneral purpose hardware as discussed above, as an alternative the samemay also be embodied in dedicated hardware or a combination ofsoftware/general purpose hardware and dedicated hardware. If embodied indedicated hardware, each can be implemented as a circuit or statemachine that employs any one of or a combination of a number oftechnologies. These technologies may include, but are not limited to,discrete logic circuits having logic gates for implementing variouslogic functions upon an application of one or more data signals,application specific integrated circuits having appropriate logic gates,or other components, etc. Such technologies are generally well known bythose skilled in the art and, consequently, are not described in detailherein.

The flowchart of FIG. 7 shows and example of the functionality andoperation of an implementation of portions of the network page buildprocess(es) 126. If embodied in software, each block may represent amodule, segment, or portion of code that comprises program instructionsto implement the specified logical function(s). The program instructionsmay be embodied in the form of source code that comprises human-readablestatements written in a programming language or machine code thatcomprises numerical instructions recognizable by a suitable executionsystem such as a processor 503 in a computer system or other system. Themachine code may be converted from the source code, etc. If embodied inhardware, each block may represent a circuit or a number ofinterconnected circuits to implement the specified logical function(s).

Although the flowchart of FIG. 7 shows a specific order of execution, itis understood that the order of execution may differ from that which isdepicted. For example, the order of execution of two or more blocks maybe scrambled relative to the order shown. Also, two or more blocks shownin succession in FIG. 7 may be executed concurrently or with partialconcurrence. In addition, any number of counters, state variables,warning semaphores, or messages might be added to the logical flowdescribed herein, for purposes of enhanced utility, accounting,performance measurement, or providing troubleshooting aids, etc. It isunderstood that all such variations are within the scope of the presentdisclosure.

Also, any logic or application described herein, including theelectronic commerce application(s) 116 which further include the catalogsearch engine 123 and the network page build process(es) 126, thatcomprises software or code can be embodied in a non-transitory form inany computer-readable medium for use by or in connection with aninstruction execution system such as, for example, a processor 503 in acomputer system or other system. In this sense, the logic may comprise,for example, statements including instructions and declarations that canbe fetched from the computer-readable medium and executed by theinstruction execution system. In the context of the present disclosure,a “computer-readable medium” can be any medium that can contain, store,or maintain the logic or application described herein for use by or inconnection with the instruction execution system. The computer-readablemedium can comprise any one of many physical media such as, for example,electronic, magnetic, optical, electromagnetic, infrared, orsemiconductor media. More specific examples of a suitablecomputer-readable medium would include, but are not limited to, magnetictapes, magnetic floppy diskettes, magnetic hard drives, memory cards,solid-state drives, USB flash drives, or optical discs. Also, thecomputer-readable medium may be a random access memory (RAM) including,for example, static random access memory (SRAM) and dynamic randomaccess memory (DRAM), or magnetic random access memory (MRAM). Inaddition, the computer-readable medium may be a read-only memory (ROM),a programmable read-only memory (PROM), an erasable programmableread-only memory (EPROM), an electrically erasable programmableread-only memory (EEPROM), or other type of memory device.

It should be emphasized that the above-described embodiments of thepresent disclosure are merely possible examples of implementations setforth for a clear understanding of the principles of the disclosure.Many variations and modifications may be made to the above-describedembodiment(s) without departing substantially from the spirit andprinciples of the disclosure. All such modifications and variations areintended to be included herein within the scope of this disclosure andprotected by the following claims.

Therefore, the following is claimed:
 1. A non-transitorycomputer-readable medium embodying a program executable in a computingdevice, the program comprising: code that obtains a pool of products inresponse to a search request, each of the products being classified inat least one of a plurality of product categories, the productcategories comprising at least a portion of a taxonomy, the portion ofthe taxonomy displaying at least one branch of a tree of conceptsassociated with the at least one of the product categories, and theproducts being offered for sale through a network presence; code thatidentifies one of a plurality of sellers based at least in part on thesearch request; code that obtains a plurality of seller-specified rulesbased at least in part on the identified one of the sellers; code thatidentifies a select one of the product categories through an applicationof the seller-specified rules; code that encodes a network page to berendered on a client, the network page displaying a subset of theproducts in the pool, each of the products in the subset beingassociated with the select one of the product categories; and code thatobtains a seller specification of at least one condition based at leastin part on the identified one of the sellers, the at least one conditionindicating a pre-defined priority for applying the seller-specifiedrules.
 2. The non-transitory computer-readable medium of claim 1,wherein the seller-specified rules identify the select one of theproduct categories based at least in part upon at least one purchasehistory associated with at least one user.
 3. The non-transitorycomputer-readable medium of claim 1, wherein the seller-specified rulesidentify the select one of the product categories based at least in partupon a past sales history of the products.
 4. A system, comprising: atleast one computing device; a search engine executing in the at leastone computing device that identifies a plurality of items to display ina network page in response to a request for search; and a network pagebuild process executing in the at least one computing device, thenetwork page build process comprising: logic that identifies one of aplurality of sellers based at least in part on the request; logic thatdetermines a plurality of seller-specified rules corresponding to theidentified one of the sellers; and logic that applies theseller-specified rules to determine a plurality of categories for whichcorresponding ones of the items are to be displayed in the network page,the categories making up a portion of a taxonomy that is to be displayedin association with the items, the portion of the taxonomy displaying atleast one branch of a tree of concepts associated with the categories,wherein each of the seller-specified rules are applied according to apredefined priority.
 5. The system of claim 4, wherein the itemscomprise products sold through a network presence of the sellers, andthe network page displays the items as a result of the search, where thesearch comprises a product search.
 6. The system of claim 4, wherein thenetwork page build process further comprises logic that encodes fordisplay in the network page at least the portion of the taxonomydisplaying at least one branch of the tree of concepts.
 7. The system ofclaim 4, further comprising a seller portal implemented in the at leastone computing device, the seller portal being configured to receive aninput of at least one of the seller-specified rules.
 8. The system ofclaim 4, wherein the seller-specified rules are organized into aplurality of sets of rules, and the system further comprising: a sellerportal implemented in the at least one computing device; the sellerportal comprises a plurality of network pages, wherein each of thenetwork pages is configured to receive an input of at least one of thesets of the rules.
 9. The system of claim 8, wherein the network pagebuild process further comprises logic that determines which ones of thesets of rules is to be applied to determine the at least one of thecategories for which corresponding ones of the items are to be displayedin the network page.
 10. The system of claim 4, wherein at least one ofthe seller-specified rules determines the at least one of the categoriesbased at least in part upon a state of an inventory of at least one ofthe items.
 11. The system of claim 4, wherein at least one of theseller-specified rules determines the at least one of the categoriesbased at least in part upon at least one search history associated witha corresponding at least one user.
 12. The system of claim 4, wherein atleast one of the seller-specified rules determines the at least one ofthe categories based at least in part upon a past sales history of theplurality of items.
 13. A method, comprising the steps of: classifying,in at least one computing device, each one of a plurality of items soldthrough a network presence in at least one of a plurality of categories;obtaining, in the at least one computing device, a collection of theitems in response to a search request in the at least one computingdevice; identifying, in the at least one computing device, one of aplurality of sellers participating in the network presence; obtaining,in the at least one computing device, a seller specification of at leastone rule based at least in part on the identified one of the sellers;identifying, in the at least one computing device, at least one of thecategories through an application of the at least one rule; identifying,in the at least one computing device, a portion of a taxonomy that is tobe displayed in association with the at least one of the categories;encoding, in the at least one computing device, a network page to berendered on a client, the network page displaying the portion of thetaxonomy, the portion of the taxonomy including at least one branch of atree of concepts associated with a subset of the items in thecollection, each of the items in the subset being associated with the atleast one of the categories; and obtaining, in the at least onecomputing device, a seller specification of at least one condition basedat least in part on the identified one of the sellers, the at least onecondition dictating a pre-defined priority for applying theseller-specified rules.
 14. The method of claim 13, wherein the at leastone rule determines the at least one of the categories based at least inpart upon a state of an inventory of at least one of the items.
 15. Themethod of claim 13, wherein the at least one rule determines the atleast one of the categories based at least in part upon a profiledescribing a user.
 16. The method of claim 13, wherein the at least onerule determines the at least one of the categories based at least inpart upon a past sales history of a user.